//
//  main.m
//  VariadicParamtersObjC
//
//  Created by 李煜 on 2024/8/2.
//

#import <Foundation/Foundation.h>

// 声明一个函数，它接受一个整数作为参数数量，然后是任意数量的整数
/// 可变参数函数
/// - Parameter count: 可变参数的数量
void printIntegers(int count, ...) {
  va_list args;
  va_start(args, count); // 初始化args以访问可变参数
  for (int i = 0; i < count; i++) {
    if (i == 2) {
      char *str = va_arg(args, char*);
      printf("%s\n", str);
      continue;
    }
    int arg = va_arg(args, int); // 获取下一个参数
    NSLog(@"%d ", arg);
  }
  va_end(args); // 清理工作
}
int main(int argc, const char * argv[]) {
  @autoreleasepool {
      
    // 调用函数，传递任意数量的整数
    printIntegers(5, 10, 3,"20", 30,32);
  }
  return 0;
}
